Correctness and Refinement of Dually Nondeterministic Programs

نویسندگان

  • Orieta Celiku
  • Joakim von Wright
چکیده

In this paper we extend different reasoning methods from traditional (demonic) programs to programs with both demonic and angelic nondeterminism. In particular, we discuss correctness proofs, and refinement of programs while reducing angelic nondeterminism (into demonic nondeterminism or determinism). As expected, reducing angelic nondeterminism is generally not a refinement; however, when context is taken into consideration, it can result in refinement. We also show how correctness proofs can be used to implement a winning strategy for the angel (when such a strategy exists). TUCS Laboratory Learning and Reasoning Laboratory

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Two Dually Nondeterministic Refinement Algebras

A dually nondeterministic refinement algebra with a negation operator is proposed. The algebra facilitates reasoning about totalcorrectness preserving program transformations and nondeterministic programs. The negation operator is used to express enabledness and termination operators through a useful explicit definition. As a small application, a property of action systems is proved employing t...

متن کامل

Towards a ML Extension with Refinement: a Semantic Issue

Refinement is a method to derive correct programs from specifications. A rich type language is another way to ensure program correctness. In this paper, we propose a wide-spectrum language mixing both approaches for the ML language. Mainly, base types are simply included into expressions, introducing underdeterminism and dependent types. We focus on the semantic aspects of such a language. We s...

متن کامل

Refinement: An overview

The purpose of this initial chapter is to introduce concepts and techniques assumed as general background in the remaining chapters of this book. The relevant notions are introduced using a simple and well-known programming notation: Dijkstra’s language of guarded commands [81], presented in Section 1. Three classical approaches to assigning semantic meaning to programs are then explored. In Se...

متن کامل

Separating Functional and Parallel Correctness using Nondeterministic Sequential Specifications

Writing correct explicitly-parallel programs can be very challenging. While the functional correctness of a program can often be understood largely sequentially, a software engineer must simultaneously reason about the nondeterministic parallel interleavings of the program’s threads of execution. This complication is similarly a challenge to automated verification efforts. Thus, we argue that i...

متن کامل

Metric Semantics and Full Abstractness for Action Refinement and Probabilistic Choice

This paper provides a case-study in the field of metric semantics for probabilistic programming. Both an operational and a denotational semantics are presented for an abstract process language Lpr , which features action refinement and probabilistic choice. The two models are constructed in the setting of complete ultrametric spaces, here based on probability measures of compact support over se...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003